package com.clouddisk.oss.properties;

import com.qiwenshare.ufop.autoconfiguration.UFOPProperties;
import com.qiwenshare.ufop.config.AliyunConfig;
import com.qiwenshare.ufop.config.MinioConfig;
import com.qiwenshare.ufop.config.QiniuyunConfig;
import com.qiwenshare.ufop.domain.ThumbImage;

/**
 * @author ZJH
 */
public class OssUfoProerties {
    private String bucketName;
    private String storageType;
    private String localStoragePath;
    private AliyunConfig aliyun = new AliyunConfig();
    private ThumbImage thumbImage = new ThumbImage();
    private MinioConfig minio = new MinioConfig();
    private QiniuyunConfig qiniuyun = new QiniuyunConfig();

    public OssUfoProerties() {
    }

    public String getBucketName() {
        return this.bucketName;
    }

    public String getStorageType() {
        return this.storageType;
    }

    public String getLocalStoragePath() {
        return this.localStoragePath;
    }

    public AliyunConfig getAliyun() {
        return this.aliyun;
    }

    public ThumbImage getThumbImage() {
        return this.thumbImage;
    }

    public MinioConfig getMinio() {
        return this.minio;
    }

    public QiniuyunConfig getQiniuyun() {
        return this.qiniuyun;
    }

    public void setBucketName(final String bucketName) {
        this.bucketName = bucketName;
    }

    public void setStorageType(final String storageType) {
        this.storageType = storageType;
    }

    public void setLocalStoragePath(final String localStoragePath) {
        this.localStoragePath = localStoragePath;
    }

    public void setAliyun(final AliyunConfig aliyun) {
        this.aliyun = aliyun;
    }

    public void setThumbImage(final ThumbImage thumbImage) {
        this.thumbImage = thumbImage;
    }

    public void setMinio(final MinioConfig minio) {
        this.minio = minio;
    }

    public void setQiniuyun(final QiniuyunConfig qiniuyun) {
        this.qiniuyun = qiniuyun;
    }

    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof OssUfoProerties)) {
            return false;
        } else {
            OssUfoProerties other = (OssUfoProerties)o;
            if (!other.canEqual(this)) {
                return false;
            } else {
                label95: {
                    Object this$bucketName = this.getBucketName();
                    Object other$bucketName = other.getBucketName();
                    if (this$bucketName == null) {
                        if (other$bucketName == null) {
                            break label95;
                        }
                    } else if (this$bucketName.equals(other$bucketName)) {
                        break label95;
                    }

                    return false;
                }

                Object this$storageType = this.getStorageType();
                Object other$storageType = other.getStorageType();
                if (this$storageType == null) {
                    if (other$storageType != null) {
                        return false;
                    }
                } else if (!this$storageType.equals(other$storageType)) {
                    return false;
                }

                Object this$localStoragePath = this.getLocalStoragePath();
                Object other$localStoragePath = other.getLocalStoragePath();
                if (this$localStoragePath == null) {
                    if (other$localStoragePath != null) {
                        return false;
                    }
                } else if (!this$localStoragePath.equals(other$localStoragePath)) {
                    return false;
                }

                label74: {
                    Object this$aliyun = this.getAliyun();
                    Object other$aliyun = other.getAliyun();
                    if (this$aliyun == null) {
                        if (other$aliyun == null) {
                            break label74;
                        }
                    } else if (this$aliyun.equals(other$aliyun)) {
                        break label74;
                    }

                    return false;
                }

                label67: {
                    Object this$thumbImage = this.getThumbImage();
                    Object other$thumbImage = other.getThumbImage();
                    if (this$thumbImage == null) {
                        if (other$thumbImage == null) {
                            break label67;
                        }
                    } else if (this$thumbImage.equals(other$thumbImage)) {
                        break label67;
                    }

                    return false;
                }

                Object this$minio = this.getMinio();
                Object other$minio = other.getMinio();
                if (this$minio == null) {
                    if (other$minio != null) {
                        return false;
                    }
                } else if (!this$minio.equals(other$minio)) {
                    return false;
                }

                Object this$qiniuyun = this.getQiniuyun();
                Object other$qiniuyun = other.getQiniuyun();
                if (this$qiniuyun == null) {
                    if (other$qiniuyun != null) {
                        return false;
                    }
                } else if (!this$qiniuyun.equals(other$qiniuyun)) {
                    return false;
                }

                return true;
            }
        }
    }

    protected boolean canEqual(final Object other) {
        return other instanceof UFOPProperties;
    }

    public int hashCode() {
        boolean PRIME = true;
        int result = 1;
        Object $bucketName = this.getBucketName();
        result = result * 59 + ($bucketName == null ? 43 : $bucketName.hashCode());
        Object $storageType = this.getStorageType();
        result = result * 59 + ($storageType == null ? 43 : $storageType.hashCode());
        Object $localStoragePath = this.getLocalStoragePath();
        result = result * 59 + ($localStoragePath == null ? 43 : $localStoragePath.hashCode());
        Object $aliyun = this.getAliyun();
        result = result * 59 + ($aliyun == null ? 43 : $aliyun.hashCode());
        Object $thumbImage = this.getThumbImage();
        result = result * 59 + ($thumbImage == null ? 43 : $thumbImage.hashCode());
        Object $minio = this.getMinio();
        result = result * 59 + ($minio == null ? 43 : $minio.hashCode());
        Object $qiniuyun = this.getQiniuyun();
        result = result * 59 + ($qiniuyun == null ? 43 : $qiniuyun.hashCode());
        return result;
    }

    public String toString() {
        return "UFOPProperties(bucketName=" + this.getBucketName() + ", storageType=" + this.getStorageType() + ", localStoragePath=" + this.getLocalStoragePath() + ", aliyun=" + this.getAliyun() + ", thumbImage=" + this.getThumbImage() + ", minio=" + this.getMinio() + ", qiniuyun=" + this.getQiniuyun() + ")";
    }
}
